package matheus.tp01cg.objetosdedesenho;

/**
 * Retangulos utilizando restas de Bresenham
 * 
 * @author matheus
 * 
 */
public final class RetanguloBresenham extends Retangulo {

	public RetanguloBresenham(Coords a, Coords b, int corBorda,
			int corPreenchimento) throws Exception {
		super(a, b, corBorda, corPreenchimento);
	}

	public RetanguloBresenham(Coords p, int largura, int altura, int corBorda,
			int corPreenchimento) throws Exception {
		super(p, largura, altura, corBorda, corPreenchimento);
	}

	@Override
	public Retangulo retanguloCreate(Coords a, Coords b, int corBorda,
			int corPreenchimento) throws Exception {
		return new RetanguloBresenham(a, b, corBorda, corPreenchimento);
	}

	@Override
	public Retangulo retanguloCreate(Coords p, int largura, int altura,
			int corBorda, int corPreenchimento) throws Exception {
		return new RetanguloBresenham(p, largura, altura, corBorda,
				corPreenchimento);
	}

	@Override
	public Reta retaCreate(Coords pontoInicial, Coords pontoFinal, int cor) {
		return new RetaBresenham(pontoInicial, pontoFinal, cor);
	}

	@Override
	public Poligono poligonoCreate(int corBorda, int corPreenchimento) {
		return new PoligonoBresenham(corBorda, corPreenchimento);
	}

}
